package com.chengyu.eyc.model;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;

import com.chengyu.eyc.utils.EycGenId;

import tk.mybatis.mapper.annotation.KeySql;

@Table(name = "eyc_vehicle_av")
public class EycVehicleAv extends BaseModel implements Serializable {
    private static final long serialVersionUID = 1L;

    @KeySql(genId = EycGenId.class)
    @Id
    @Column(name = "VEHICLE_AV_ID")
    private String vehicleAvId;

    /**
     * 车牌号
     */
    @Column(name = "PLATE_NUM")
    private String plateNum;

    /**
     * 评估师
     */
    @Column(name = "EVALUATOR")
    private String evaluator;

    /**
     * 估值日期
     */
    @Column(name = "AV_DT")
    private Date avDt;

    /**
     * 估值
     */
    @Column(name = "AV_AMOUNT")
    private Integer avAmount;

    /**
     * 购买价格
     */
    @Column(name = "PURCHASE_PRICE")
    private Integer purchasePrice;

    /**
     * 行车里程(KM)
     */
    @Column(name = "TOTAL_MILEAGE")
    private Integer totalMileage;

    /**
     * 车况
     */
    @Column(name = "VEHICLE_COND")
    private String vehicleCond;
    
    /**
     * 碰撞情况
     */
    @Column(name = "COLLISION")
    private String collision;

    private List<EycVehicleAvItem> items;

    /**
     * 获取估值
     *
     * @return AV_AMOUNT - 估值
     */
    public Integer getAvAmount() {
        return avAmount;
    }

    /**
     * 获取估值日期
     *
     * @return AV_DT - 估值日期
     */
    public Date getAvDt() {
        return avDt;
    }

    /**
     * 获取碰撞情况
     *
     * @return COLLISION - 碰撞情况
     */
    public String getCollision() {
        return collision;
    }

    /**
     * 获取评估师
     *
     * @return EVALUATOR - 评估师
     */
    public String getEvaluator() {
        return evaluator;
    }

    /**
     * @return the items
     */
    public List<EycVehicleAvItem> getItems() {
        return items;
    }

    /**
     * 获取车牌号
     *
     * @return PLATE_NUM - 车牌号
     */
    public String getPlateNum() {
        return plateNum;
    }

    /**
     * 获取购买价格
     *
     * @return PURCHASE_PRICE - 购买价格
     */
    public Integer getPurchasePrice() {
        return purchasePrice;
    }

    /**
     * 获取行车里程(KM)
     *
     * @return TOTAL_MILEAGE - 行车里程(KM)
     */
    public Integer getTotalMileage() {
        return totalMileage;
    }

    /**
     * @return VEHICLE_AV_ID
     */
    public String getVehicleAvId() {
        return vehicleAvId;
    }

    /**
     * 获取车况
     *
     * @return VEHICLE_COND - 车况
     */
    public String getVehicleCond() {
        return vehicleCond;
    }

    /**
     * 设置估值
     *
     * @param avAmount 估值
     */
    public void setAvAmount(Integer avAmount) {
        this.avAmount = avAmount;
    }

    /**
     * 设置估值日期
     *
     * @param avDt 估值日期
     */
    public void setAvDt(Date avDt) {
        this.avDt = avDt;
    }

    /**
     * 设置碰撞情况
     *
     * @param collision 碰撞情况
     */
    public void setCollision(String collision) {
        this.collision = collision == null ? null : collision.trim();
    }

    /**
     * 设置评估师
     *
     * @param evaluator 评估师
     */
    public void setEvaluator(String evaluator) {
        this.evaluator = evaluator == null ? null : evaluator.trim();
    }

    /**
     * @param items the items to set
     */
    public void setItems(List<EycVehicleAvItem> items) {
        this.items = items;
    }

    /**
     * 设置车牌号
     *
     * @param plateNum 车牌号
     */
    public void setPlateNum(String plateNum) {
        this.plateNum = plateNum == null ? null : plateNum.trim();
    }

    /**
     * 设置购买价格
     *
     * @param purchasePrice 购买价格
     */
    public void setPurchasePrice(Integer purchasePrice) {
        this.purchasePrice = purchasePrice;
    }

    /**
     * 设置行车里程(KM)
     *
     * @param totalMileage 行车里程(KM)
     */
    public void setTotalMileage(Integer totalMileage) {
        this.totalMileage = totalMileage;
    }

    /**
     * @param vehicleAvId
     */
    public void setVehicleAvId(String vehicleAvId) {
        this.vehicleAvId = vehicleAvId == null ? null : vehicleAvId.trim();
    }

    
    /**
     * 设置车况
     *
     * @param vehicleCond 车况
     */
    public void setVehicleCond(String vehicleCond) {
        this.vehicleCond = vehicleCond == null ? null : vehicleCond.trim();
    }

    
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", vehicleAvId=").append(vehicleAvId);
        sb.append(", plateNum=").append(plateNum);
        sb.append(", evaluator=").append(evaluator);
        sb.append(", avDt=").append(avDt);
        sb.append(", avAmount=").append(avAmount);
        sb.append(", purchasePrice=").append(purchasePrice);
        sb.append(", totalMileage=").append(totalMileage);
        sb.append(", vehicleCond=").append(vehicleCond);
        sb.append(", collision=").append(collision);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}